package com.ynny.extends_.bean07;

public class AnimalTest {

    public static void main(String[] args) {

//        Dog dog = new Dog();
//        dog.eat();
//
//        Cat cat = new Cat();
//        cat.eat();

        //多态 前提
        //1.子类必须继承父类 父类 = 子类
        //2.子类必须重写父类的方法
        Animal animal = new Animal();
        animal.eat();


        //同一类型的类
        //同一种动物 多种形态展示
        //向上转型 是 自动的
        Animal animal1 = new Dog();
        //是狗类
        System.out.println(animal1.getClass());
        animal1.eat();

        Animal animal2 = new Cat();
        //animal2 猫类
        animal2.eat();

        //向下转型 如果类型不匹配就会抛异常
//       Cat cat = (Cat) new Animal();
//       cat.eat();

        //自动类型提升 和 强制类型转换
//        //int  < double
//        int x = (int)1.0;
//        // long > int
//        long y = 1;


    }
}
